package operation;
import book.BookList;
import java.util.Scanner;
public class BorrowOperation implements IOperation{
    public void work(BookList bookList){
        System.out.println("借阅图书");
        System.out.println("请输入你要借阅的图书名字：");
        Scanner scanner=new Scanner(System.in);
        String name=scanner.next();//nextLine()区别
        int curSize= bookList.getUsedSize();
        int i=0;
        for (; i < curSize; i++) {
            //这行代码如何编辑
            if(name.equals(bookList.getBooks(i).getName())==true&&
                    bookList.getBooks(i).isBorrowed()==false){
                bookList.getBooks(i).setBorrowed(true);
                System.out.println(name+"借阅成功");
                //如何进一步模拟实现书架业务逻辑
                return;
            } else if (name.equals(bookList.getBooks(i).getName())==true&&bookList.getBooks(i).isBorrowed()==true) {
                System.out.println("该书已被借阅，将自动返回最初页面");
                work(bookList);
                //return;
               //work(bookList);
                //return;//return?
            }
            //如何实现重写的业务逻辑

        }
        System.out.println("你输入的图书名字有误，请重写，将自动返回最初页面");
        work(bookList);
    }
//        if(i>=curSize){//如何实现重写的业务逻辑
//            System.out.println("你输入的图书名字有误，请重写");
//        }
//        else{
//            System.out.println("该书已经被借出");
//        }
}
//这段代码存在一些逻辑问题。首先，当输入的图书名字与书架上的某本书名字匹配时，
//        应该将该书标记为已借阅，并输出借阅成功的提示信息。
//        但是在当前代码中，只是将该书标记为已借阅，却没有输出借阅成功的提示信息。
//        其次，当输入的图书名字与书架上的某本书名字不匹配时，
//        应该输出图书名字有误的提示信息，并重新输入图书名字。
//        但是在当前代码中，只是输出图书名字有误的提示信息，
//        却没有重新输入图书名字的逻辑。
//        下面是修改后的代码：
//public void work(BookList bookList){
//        System.out.println("借阅图书");
//        System.out.println("请输入你要借阅的图书名字：");
//        Scanner scanner=new Scanner(System.in);
//        String name=scanner.next();
//        int curSize= bookList.getUsedSize();
//        int i=0;
//        for (; i < curSize; i++) {
//        if(name.equals(bookList.getBooks(i).getName()) && !bookList.getBooks(i).isBorrowed()){
//        bookList.getBooks(i).setBorrowed(true);
//        System.out.println(name+"借阅成功");
//        // 进一步模拟实现书架业务逻辑
//        return;
//        } else if (bookList.getBooks(i).isBorrowed()) {
//        System.out.println("该书已被借阅，将自动返回最初页面");
//        work(bookList);
//        return;
//        }
//        }
//        System.out.println("你输入的图书名字有误，请重写");
//        work(bookList);
//        }


